home *** CD-ROM | disk | FTP | other *** search
- Subject: Subframes revisited
- Sent: 10/22/96 2:56 PM
- Received: 10/22/96 4:05 PM
- From: Paul Mylchreest, paulm@teamsoft.com
- Reply-To: ODF Interest, ODF-Interest@CILabs.ORG
- To: OpenDoc Development Framework Discussion List, ODF-Interest@CILabs.
-
- Dear ODF people,
-
- I am attempting to create subframes on the fly in my part.
- This was previously discussed in march
-
- Subject: Re: spitting a window
- Sent: 3/28/96 9:04 AM
- Received: 3/28/96 9:21 AM
- From: lamiraux@apple.com
- Reply-To: ODF-Interest@CILabs.ORG
- To: OpenDoc Development Framework Discussion List,
- ODF-Interest@CILabs.
-
- -- clip
- >Anyone, this could be documented somewhere in which case just point
- me there.
- >I'm trying to split a window as in MPW. So I thought I'd take an
- FW_CFrame
- >and give it two FW_CFrames as subframes. Somehow this seems wrong
- because
- >then I appear to have one OD frame for both sub FW_CFrames. So I
- thought I'd
- >make the two two subframes FW_CViews...that seems wrong because they
- do not
- >have a FW_CView context for the scroller.
- >
- >I cannot figure out how to get another OD frame to attach to a new
- >FW_CFrame...
- >
- >Somehow, I think I am just not getting how all this is supposed to
- fit
- >together. Can anyone point me in the right direction.
- >
- >Gerry
-
- Splitting a window in not yet covered in ODF. The way to do it is to
- apply the OpenDoc recipe directly. Lets say you want to split your
- frame
- (lets call it CMyFrame). The easiest way is to use a special frame
- (lets
- call it a CSplitFrame) with a special presentation
- (CSplitPresentation).
- This frame has to be an embedding frame (subclass of
- FW_CEmbeddingFrame).
- Inside this frame you should embed two (or more) of your CMyFrame
- using
- CSplitPresentation::Embed passing the presentation of CMyFrame
- (CMyPresentation) and your part (CMyPart::GetODPart).
- -- clip
-
-
- Henri wrote
-
- >Try passing NULL for the odEmbeddedFrame in Embed.
- >FW_MProxy::Embed will create the ODFrame for you. What you are doing
- >here is embedding the containing frame inside itself.
-
- I tried this before. But I'm still getting an assertion in
- FW_CProxy::Embed():
- PRList.cpp @472: fSeed == fList->fSeed.
-
- -- clip
- COpenContactProxy
- *newProxy = new COpenContactProxy(ev, fPart);
-
- FW_CAcquiredODPart
- odEmbeddedPart = fPart->GetODPart(ev);
-
- FW_CAcquiredODShape
- aqFrameShape = CreateFrameShape(ev);
-
- newProxy->Embed(
- ev,
- fPart->GetPresentation(),
- odEmbeddedPart,
- NULL,
- kODFrameObject,
- aqFrameShape,
- FW_CPart::fgViewAsLargeIconToken,
- fPart->GetPresentation()->GetDefaultEmbeddedFrameViewType(ev),
- 0,
- false,
- true);
- -- clip
-
- Thanks for any help.
-
- ________________
- Paul Mylchreest
- Teamsoft Inc.
- Montréal, Québec, Canada
- http://teamsoft.com
-
- ---------------------------------------------------
- This message was created and sent using the Cyberdog Mail System
- ---------------------------------------------------
-
-
-
-